Field of the Disclosure
The present disclosure relates generally to processors and more particularly to memory management at processors.
Description of the Related Art
To improve processing speed some processors, referred to as heterogeneous processors, employ heterogeneous processing units, which may be dedicated to special processing functions. For example, a processor may employ one or more central processing unit (CPU) cores to execute general-purpose instructions and one or more graphics processing units (GPUs) to execute parallel processing instructions and functions related to graphics and display operations. The GPUs include circuitry specifically designed to execute these operations, improving overall processor performance. In addition, a processor can employ a non-uniform memory architecture (NUMA), wherein different memory modules associated with the processor have different access speeds and latencies that can be accessed more efficiently by some processors than by others. A memory manager, such as an operating system (OS) or hardware module can transfer data between the memory modules so the data can be accessed more efficiently by the processing unit that is to access the data next. However, the data transfers can consume an undesirably large amount of processor resources and memory bandwidth, impacting processor performance and power consumption.